* Add README.md to all-devices-app (#71734)
* Add README.md to all-devices-app
* Restyled by prettier-markdown
* Fix spelling in README.md
* Update firewall instructions in README.md for security
* Update examples/all-devices-app/README.md
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* Restyled by prettier-markdown
* Add README to toctree in all_devices.md
* Clarify generic nature of firewall troubleshooting in README.md
* Move generic firewall instructions to dedicated file and link from README
* Remove firewall instructions and dedicated file from README
* Update examples/all-devices-app/README.md
Co-authored-by: Andrei Litvin <andy314@gmail.com>
* Simplify Chime examples and remove bash script from README
* Manually apply restyling for long line in README.md
* restyle
* Correct platform directory list in README.md
* Restyled by prettier-markdown
* Use in-project link for chip-tool documentation in README
* Restyled by prettier-markdown
---------
Co-authored-by: Restyled.io <commits@restyled.io>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Andrei Litvin <andy314@gmail.com>
* [all-devices-app] Support parent/child endpoint relationships via command line (#71756)
* Support parent/child endpoint relationships via command line in all-devices-app
* Restyled by whitespace
* Restyled by clang-format
* Document parent/child endpoint relationship feature in README.md
* Restyled by prettier-markdown
* Fix logging format for endpoint IDs in main.cpp
* Simplify logging format in main.cpp to save flash
* Apply restyling to main.cpp
* Refactor device type parsing in all-devices-app
- Extracted parsing logic to a reusable DeviceTypeParser component in all-devices-common.
- Updated CLI syntax to use comma-separated options (e.g., type:endpoint,parent=parentId).
- Removed redundant --endpoint option.
- Removed Singleton pattern from DeviceTypeParser and used dependency injection/facade pattern.
- Moved default device policy to application code in main.cpp.
- Added unit tests for the parser.
- Updated help text and README.md with new syntax.
* Restyle files after refactor
* Revert spurious flags.gni change
* Move default device fallback to AppOptions
* Fix duplicate test target in device-type-parser/BUILD.gn
* Restyle fixes for BUILD.gn
---------
Co-authored-by: Restyled.io <commits@restyled.io>
* [all-devices-app] Add cmd line options "--KVS, --discriminator, --vendor-id, --product-id --interface-id" and remove dependency on global LinuxDeviceOptions (#71735)
* Refactor all-devices-app to remove reliance on global options and add KVS support
* Fix compilation errors in main.cpp after AppOptions refactor
* Add support for --vendor-id and --product-id options in all-devices-app
* Address review comments: make GetConfig() const and restore default device fallback
* Rename deviceConfigs to deviceTypeEntries for consistency
* Update DeviceTypeParser: rename member variable and fix doc comment
* Add validation for discriminator option
* Move AppDeviceInstanceInfoProvider to a separate header file
* Separate AppDeviceInstanceInfoProvider into .h and .cpp files
* Apply restyling and style fixes
* Move provider files to all-devices-common (rename only)
* Implement full DeviceInfoProviderImpl and update build files
* Apply restyling fixes
* Rename DeviceInstanceInfoProviderImpl to OverrideDeviceInstanceInfoProvider and add safe fallbacks
* Support setting port dynamically via --port option
* Support --interface-id option in all-devices-app
* Split providers into separate source sets and fix includes
* Use short include paths for files in all-devices-common
* Move providers to a separate sub-directory in all-devices-common
* Remove singleton from DeviceInfoProviderImpl and move instance to local static in Initialize
* Rename DeviceInfoProviderImpl to TestDeviceInfoProviderImpl
* Implement Friend Pattern for iterators in TestDeviceInfoProviderImpl
* Use VerifyOrReturnError pattern in OverrideDeviceInstanceInfoProvider.cpp
* Fully switch to std::optional in AppOptions and OverrideDeviceInstanceInfoProvider
* Use value_or for port in main.cpp and always log the port used
* Rename TestDeviceInfoProviderImpl back to AllDevicesExampleDeviceInfoProviderImpl
* Rename OverrideDeviceInstanceInfoProvider to AllDevicesExampleDeviceInstanceInfoProviderImpl and apply restyling
* Use value_or for discriminator in main.cpp
* Disable All Groupcast Functionality by Default (#72047)
* Initial updates to zap, gni, all devices args, python tests
* Remove args.gni file that wasnt needed
* Fix compile issues
* Update python tests all devices app args
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Zap regen
* Remove unimplemented app arg
* max groups per fabric revert to legacy unless for constructor
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Cast to uint16_t and make hex value lowercase
* add todo
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Fix build issues w/ GROUPS CLUSTER and temp sensor gn
* Restyled by clang-format
* remove unused ble arg (this works wasnt cherry-picked)
* zap regen
---------
Co-authored-by: Sergio Soares <sergiosoares@google.com>
Co-authored-by: Restyled.io <commits@restyled.io>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Andrei Litvin <andy314@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Summary
Groupcast is provisional and should for now, be disabled by default on all apps. Legacy groups functionality should remain intact. This PR makes the following changes:
Disables groupcast in zap files where it was previously enabled
Zap regen
Make
chip_config_enable_groupcastfalse by default for all appsAdd a
-groupcastapp argument to all devices app to ensure there's a way to still test groupcast functionality with this app. Groupcast will be disabled by default but this will enable it.Make
GroupDataProviderImpl()default constructor useCHIP_CONFIG_MAX_GROUPS_PER_FABRICinstead ofkMaxMembershipPerFabricformaxGroupsPerFabric. This reverts the value back to what it was for legacy groupsGetMaxGroupsPerFabric(), to return eithergetMaxMembershipCount() / 2if groupcast is enabled, ormMaxGroupsPerFabricotherwise. This is needed because groupcast can still be enabled at runtime for all devices app (like it is now doing in some tests for CI).getMaxMembershipCount()returnskMaxMembershipCount, so this retains the functionality that was introduced for groupcast in [Groupcast] Align GroupDataProvider limits with membership count #43167Testing